Linux 操作系統(第4版)

Linux 操作系統(第4版)

作者: 邵國金 張娜
出版社: 電子工業
出版在: 2020-11-01
ISBN-13: 9787121398728
ISBN-10: 7121398729
裝訂格式: 平裝
總頁數: 488 頁





內容描述


本書以紅帽(Fedora30、CentOS8 和RHEL8)及Ubuntu 18.04 系統為藍本,
分4 篇介紹了Linux 操作系統的基礎、系統管理、編程與開發、網絡服務與應用。
基礎篇介紹了UNIX/Linux 系統的基本知識、基本操作和基本管理;
系統管理篇介紹了UNIX/Linux 系統的常用管理內容,包括用戶、
組和密碼管理,文件系統管理及使用,進程、任務與作業管理,
系統安裝、擴充、啟動與管理,設備管理,網絡配置、管理與基本應用,
Linux 系統的安全;編程與開發篇介紹了bshell 編程、C/C++及其他編程環境;
網絡服務與應用篇介紹了Linux 系統的常用網絡應用與網絡服務,
包括網絡時間服務NTP、基礎服務OpenSSH和VNC、Web 服務器Nginx、
DHCP 服務器、FTP 與TFTP 服務器、網絡資源共享服務、域名服務器DNS。
本書與以前的版本相比最大的不同是引入了Linux 系統的最新技術和應用,
強化了安全技術SELinux與防火牆。
本書從培養“應用型”人才的理念出發,兼顧基本知識和基本理論介紹,
內容翔實,結構清晰,具有較強的實用性和指導性;基於不斷發展、
安全穩定且為虛擬化、大數據和雲計算提供很好支持的紅帽和Ubuntu 系統,
具有廣泛的代表性,並且內容兼顧UNIX 系統。
本書可作為高等學校UNIX/Linux 操作系統的教材,
也可作為網絡操作系統的實例教材,
還可作為UNIX 和Linux 操作系統管理者和愛好者的參考書。


目錄大綱


目錄
●基礎篇
章系統簡介.2
1.1 UNIX系統簡介.2
1.1.1 UNIX系統的發展歷史.2
1.1.2 UNIX系統的特點.6
1.2 Linux系統簡介.8
1.2.1 Linux系統的發展歷史.8
1.2 .2 Linux系統的特點.9
1.2.3 Linux系統的發行版本介紹.10
1.2.4 Linux系統的應用.12
習題1.12
實驗1.13
第2章系統入門.14
2.1系統的開機與界面切換.14
2.1. 1系統的開機.14
2.1.2兩種操作界面及切換.15
2.2用戶的登錄與註銷.16
2.2.1用戶的登錄.16
2.2.2用戶的註銷.18
2.2.3 CLI終端仿真界面.19
2.2.4程序的啟動.19
2.3 Linux系統的關閉與重啟.20
2.3.1字符界面.20
2.3.2系統的運行級別及切換.21
2.3.3圖形界面.22
2.4 Linux系統的圖形界面介紹. 22
2.4.1 GNOME簡介.23
2.4.2設置中心(Settings).26
2.5 Linux系統的在線幫助與資源.28
2.5.1 man.28
2.5.2 textinfo.29
2.5.3 yelp.30
2.5.4 Linux系統的其他幫助和資源.30
2.6 LibreOffice辦公套件簡介.31
2.6.1 LibreOffice Writer.32
2.6.2 LibreOffice Calc.32
2.6.3 LibreOffice Impress.33

  1. LibreOffice Draw.34
    習題2.34
    實驗2.35
    第3章基本操作與基本管理.36
    3.1 shell基本功能與基本概念.36
    3.1.1 shell基本功能.36
    3.1.2字符與保留字.36
    3.1.3文件命名及文件類型.38
    3.1.4目錄結構與路徑.40
    3.1.5 shell命令格式與命令行編輯.43
    3.1.6標準流與I/O重定向.45
    3.1.7管道與三通.47
    3.1.8變量與環境變量.47
    3.1.9引號機制、命令替換、變量替換與參數替換.48
    3.1.10 shell命令的執行. 50
    3.1.11 shell種類.51
    3.2 Linux系統的基本命令.52
    3.2.1目錄操作基本命令.52
    3.2.2文件操作基本命令.54
    3.2.3文件屬性操作基本命令.59
    3.2.4文本文件編輯與操作基本命令.61
    3.2. 5文件或目錄比較命令.71
    3.2.6其他操作命令.73
    3.3 Linux系統的基本管理.79
    3.3.1環境變量管理.79
    3.3.2別名管理.80
    3.3.3主機名管理.81
    3.3.4網絡基本管理.82
    3.3.5日期、時間與時區管理.86
    3.3.6軟件包基本管理.89
    3.3.7進程與信號基本管理.95
    3.3.8服務基本管理.99
    3.3.9防火牆基本管理. 105
    3.3.10 SELinux基本管理.110
    3.3.11服務管理的基本步驟.113
    習題3.114
    實驗3.116
    系統管理篇
    第4章用戶、組和密碼管理.118
    4.1 UNIX系統的用戶和組.118
    4.1.1用戶和uid.118
    4.1.2組和gid.118
    4.2與用戶和組管理相關的文件.118
    4.2.1 /etc/passwd.119
    4.2.2 /etc/shadow.119
    4.2.3 /etc/group.120
    4.2.4 /etc/login.defs.120
    4.2.5 /etc/default/useradd.121
    4.2.6其他文件.121
    4.3用戶管理命令.121
    4.3.1用戶創建(useradd,adduser).122
    4.3.2用戶刪除(userdel).124
    4.3.3用戶修改(usermod).124
    4.4組管理命令.124
    4.4.1組創建(groupadd). 124
    4.4.2組刪除(groupdel).125
    4.4.3組修改(groupmod).125
    4.5密碼管理.125
    4.5.1密碼管理綜述.125
    4.5.2密碼管理命令(passwd).126
    4.5.3密碼管理示例.126
    4.6用戶、組和密碼管理圖形界面.127
    4.6.1用戶添加.127
    4.6.2用戶屬性修改.128
    4.6.3用戶刪除.128
    4.7與用戶身份和位置相關的其他命令.129
    4.7. 1顯示與用戶和組相關的身份信息(id).129
    4.7.2顯示已登錄用戶的信息(who).129
    4.7.3顯示使用者的用戶名(whoami).130
    4.7.4控制是否顯示其他用戶發來的信息(mesg).130
    4.7.5向系統中的指定用戶發送信息(write).130
    4.7.6向正在系統中工作的所有用戶發送信息(wall).130
    4.7.7顯示用戶所使用的終端設備(tty).131
    4.7.8不退出系統而將自己切換成其他用戶(su).131
    4.7. 9以其他用戶身份執行程序(sudo).132
    習題4.134
    實驗4.135
    第5章文件系統管理及使用.136
    5.1文件系統權限及管理.136
    5.1.1三種權限.136
    5.1.2三類人.136
    5.1.3權限表示.137
    5.1.4默認權限與umask.138
    5.2權限管理命令.138
    5.2.1設置文件創建掩碼(umask).138
    5.2.2改變文件或目錄的訪問權限(chmod).139
    5.2.3改變文件的所有者(chown).139
    5.2.4改變文件所屬組(chgrp).140
    5.2.5 ext2+文件系統的新增屬性及管理.140
    5.3微機硬盤的物理結構與分區劃分.141
    5.3.1主引導扇區與分區表.141
    5.3.2 MBR格式硬盤結構.142
    5.3.3 GPT格式磁盤結構.143
    5.4文件系統管理.144
    5.4.1 UNIX/Linux系統支持的文件系統.144
    5.4.2 Linux系統使用的存儲設備.146
    5.4.3磁盤分區管理與文件系統的創建.147
    5.4.4文件系統的使用.152
    5.4.5文件系統的檢查、修復與同步.157
    5.5與文件系統管理相關的其他命令.159
    5.5.1文件綜合查找命令(find).159
    5.5.2文件按名查找命令(locate).161
    5.5.3文件複製與轉換命令(dd).162
    5.5.4鏈接管理命令(ln).163
    5.5.5特別文件創建(mknod,mkfifo).1
    5.5.6文件系統的使用情況統計(df).1
    5.5.7目錄使用磁盤空間情況統計(du).165
    5.6數據備份與文件打包壓縮.166
    5.6.1數據備份及任務.166
    5.6.2磁盤文件歸檔管理命令(tar).167
    5.6.3文件系統備份與復制命令(cpio).168
    5.文件的壓縮與解壓.170
    5.7圖形界面下的文件和目錄管理.172
    習題5.173
    實驗5.174
    第6章進程、任務與作業管理.176
    6.1程序和進程的概念.176
    6.1.1程序、進程、作業和任務.176
    6.1.2調度策略與優先級的計算.176
    6.1.3 Linux系統的啟動.177
    6.1.4 0#進程與1#進程.177
    6.1.5進程狀態及查詢(ps).178
    6.1.6三類進程.179
    6.2登錄shell的啟動與定制.180
    6.2.1用戶登錄過程與登錄shell的啟動.180
    6.2.2用戶登錄控制與shell的定制.181
    6.3 Linux系統的啟動過程分析.182
    6.3.1 SysVinit.182
    6.3.2 systemd.184
    早期服務、服務和本地服務管理.187
    .1早期服務管理.187
    .2服務器(netd /inetd).188
    .3本地服務管理.190
    6.5進程管理與調度.191
    6.5.1可執行文件的suid、sgid權限和目錄的sticky屬性.191
    6.5.2進程管理與調度命令.193
    6.5.3改變進程的根目錄(chroot).196
    6.6作業的自動調度.198
    6.6.1 at和batch.198
    6.6.2 crontab.200
    6.6.3系統crontab.202
    6.7進程管理圖形界面.202
    習題6.202
    實驗6.203
    第7章系統安裝、擴充、啟動與管理.204
    7.1系統安裝.204
    7.1.1安裝任務與準備.204
    7.1.2安裝Linux系統所需的基本分區. 205
    7.1.3安裝過程.205
    7.1.4虛擬機的安裝與使用.209
    7.2引導器(GRUB).209
    7.2.1 GRUB常用術語.209
    7.2.2操作界面.210
    7.2.3 GRUB及其配置. 211
    7.2.4系統的啟動及啟動參數的修改.215
    7.3其他軟件包管理.216
    7.3.1 tar格式包管理.216
    7.3.2其他rpm包.216
    7.3.3第三方rpm包源.217
    7.3. 4 cpio包.217
    7.3.5其他格式包.218
    7.4日誌管理.218
    7.4.1 journalctl與systemd日誌.218
    7.4.2日誌系統.220
    7.4.3常見日誌文件及閱讀.222
    7.5系統管理.224
    7.5 .1系統管理的任務.224
    7.5.2系統管理的工具與命令.225
    7.6內核配置與參數在線調整.230
    7.6.1內核源代碼安裝與配置.230
    7.6.2編譯與安裝新內核.233
    7.6.3模塊管理.234
    7.內核參數在線調整.235
    實驗7.236
    第8章設備管理.237
    8.1設備管理概述.237
    8.1.1 Linux系統支持的設備.237
    8.1.2系統設備與查看.238
    8.2打印機的管理與使用.241
    8.2.1 cups的安裝.241
    8.2.2 CUPS系統的啟動管理.241
    8.2.3打印機的安裝與配置.241
    8.2.4打印機的使用.244
    8.2.5打印任務管理.245
    8.3交換區管理.246
    8.3.1概述.246
    8.3.2使用交換設備. 247
    8.3.3使用交換文件.248
    8.4串口與終端管理.248
    8.4.1綜述.248
    8.4.2串口管理.249
    8.4.3終端及設置.249
    習題8.252
    實驗8.253
    第9章網絡配置、管理與基本應用.254
    9.1 TCP/IP基礎知識.254
    9.1.1 IP地址.254
    9.1.2物理地址與邏輯地址.256
    9.1.3端口及服務.257
    9.1.4網卡命名方案.257
    9.2網絡配置.258
    9.2.1與網絡有關的配置文件.258
    9.2.2網絡服務及管理. 261
    9.2.3 IP地址配置.262
    9.3網絡管理命令.2
    9.3.1檢查網絡狀態(netstat).2
    9.3.2地址解析協議緩存管理(arp).265
    9.3.3 IP網絡綜合管理(ip). 266
    9.3.4網絡接口的啟用與停用(ifup/ifdown).267
    9.3.5路由表維護(route).267
    9.3.6主機及IP地址查詢(nslookup、host和dig).269
    9.4網絡應用常用命令.270
    9.4.1遠程登錄(telnet與ssh).270
    9.4.2文件傳輸(ftp與tftp).270
    9.4.3郵件收發(mailx/mail).271
    9.4.4文件下載(wget).272
    習題9.273
    實驗9.274
    10章Linux系統的安全.275
    10.1 Linux系統安全概述.275
    10.1.1操作系統可能遇到的安全問題.275
    10.1.2 Linux系統的基本安全機制.276
    10.1.3 Linux系統的安全防範策略.278
    10.2檢查和監督系統的運行情況.280
    10.2.1檢查系統、進程運行狀況.280
    10.2.2檢查並停止不需要的服務.280
    10.2.3檢查系統的日誌文件.280
    10.2.4查找並去除多餘的具有suid、sgid權限的文件或屬性.280
    10.2.5檢查網絡.281
    10.2.6入侵檢測.281
    10.2. 7監督資源使用情況.281
    10.3事件報告製度.281
    10.4防火牆.282
    10.5 SELinux.283
    10.5.1 SELinux中的安全類型和角色.283
    10.5.2 SELinux安全上下文管理.284
    習題10.288
    實驗10.288
    編程與開發篇
    11章bshell編程.290
    11.1正則表達式.290
    11.1.1字符集.290
    11.1.2 shell正則表達式.292
    11.2流編輯(sed).293
    11.2.1功能及用法.293
    11.2.2參數與說明.293
    11.2.3腳本命令.293
    11.2.4 sed示例.294
    11.3模式搜索與處理(awk).295
    11.3.1功能及用法.295
    11.3.2參數說明.295
    11.3.3記錄和域.295
    11.3.4變量.295
    11.3.5操作符.296
    11.3.6控制語句.297
    11.3.7常用函數.298
    11.3.8 awk程序的執行.298
    11.3.9 awk使用示例.299
    11.4 Bourne shell及其編程.300
    11.4.1特殊字符.300
    11.4 .2變量與參數.300
    11.4.3 shell的狀態.301
    11.4.4 shell的調用與變量傳遞.302
    11.4.5 shell程序設計.302
    11.4.6命令行參數與選項的處理.316
    11.4.7 shell程序調試.319
    11.4.8 shell腳本程序格式.320
    習題11.324
    實驗11.325
    12章C/C++及其他編程環境.326
    12.1編譯器.326
    12.1.1功能及用法.326
    12.1.2參數及說明.327
    12.1 .3示例.327
    12.1.4 gcc/g++的工作過程.329
    12.2頭文件.329
    12.3鏈接器與庫文件.329
    12.4靜態庫.330
    12.4.1靜態庫的管理.330
    12.4.2靜態庫的構造.331
    12.4.3靜態庫的使用.331
    12.5共享庫.332
    12.5.1共享庫的構造.332
    12.5.2共享庫的管理.332
    12.5.3共享庫編程.333
    12.5.4共享庫使用示例.334
    12.6 make與Makefile .335
    12.6.1 make的用法簡介.335
    12.6.2 Makefile文件.336
    12.6.3 Makefile示例.338
    12.7調試器(gdb).341
    12.7.1 gdb功能.341
    12.7.2 gdb基本命令.341
    12.7. 3程序調試方法.342
    12.8 Linux系統的其他編程工具簡介.344
    12.8.1常用庫與GNOME/GTK.344
    12.8.2 KDevelop/Qt.345
    12.8.3 Java.345
    12.8.4 Eclipse.346
    12.8.5 Perl.348
    12.8.6數據庫.348
    12.8.7 PHP.349
    12.8.8 Objective-C.350
    12.8.9 Python.350
    12.8.10 R.352
    12.8.11虛擬化、雲計算和大數據應用.354
    習題12.355
    實驗12.356
    網絡服務與應用篇
    13章網絡時間服務NTP.358
    13.1 NTP協議.358
    13.1.1 NTP協議簡介.358
    13.1.2 NTP協議的工作模式.359
    13.1.3 NTP服務器及軟件選擇.359
    13.2通過ntp配置NTP.359
    13.2.1 ntp軟件包安裝.359
    13.2.2 ntp服務管理.359
    13.2.3配置文件ntp.conf及其默認配置.360
    13.2.4 /etc/sysconfig/ntpd和/etc/default/ntp文件.362
    13.2.5防火牆設置.362
    13.2.6 ntp配置實例.362
    13.2.7 ntp配置測試.3
    13.3通過chrony配置NTP.365
    13.3.1 chrony軟件包安裝.366
    13.3.2 chrony服務管理.366
    13.3.3配置文件chrony.conf及其默認配置.366
    13.3.4 chrony配置實例.367
    13.3.5 chrony配置測試.368
    13.3.6其他說明.369
    13.4無ntp服務的NTP客戶端.370
    習題13.370
    實驗13.370
    14章基礎服務OpenSSH和VNC.371
    14.1 OpenSSH.371
    14.1.1 OpenSSH協議.371
    14.1.2與啟動管理.371
    14.1.3配置文件與服務器設置.372
    14.1.4客戶端及應用.374
    14.1. 5與防火牆和SELinux的關係.376
    14.2 VNC.377
    14.2.1 TigerVNC.377
    14.2.2客戶端及使用.379
    14.2.3 x11vnc.380
    習題14.382
    實驗14.382
    15章Web服務器Nginx.383
    15.1 Nginx概述.383
    15.2 Nginx的安裝、啟動與測試.383
    15.2.1 Nginx的安裝與啟動管理.383
    15.2.2 Nginx服務的測試.384
    15.2.3 Nginx命令及簡單管理介紹.384
    15.3 Nginx的配置文件和配置指令.385
    15.3.1 Nginx的配置目錄.385
    15.3.2 Nginx主配置文件的結構.386
    15.3.3 Nginx的配置指令.388
    15.4 Web服務器配置實例.390
    15.4.1準備.390
    15.4.2默認虛擬主機.390
    15.4.3虛擬主機.390
    15.4.4主機訪問控制.392
    15.5 LNMP環境部署.394
    15.5.1 php-fpm模塊安裝與配置.394
    15.5.2 LNMP站點配置. 396
    15.5.3 php-mysql模塊安裝與配置.398
    15.6與防火牆和SELinux的關係.399
    15.6.1與防火牆的關係.399
    15.6.2與SELinux的關係.399
    習題15.401
    實驗15.401
    16章DHCP服務器.402
    16.1 DHCP介紹.402
    16.1.1 DHCP協議.402
    16.1.2 DHCP的工作過程.403
    16.2軟件包安裝與服務管理.404
    16.3 DHCP的配置.405
    16.3.1配置文件.405
    16.3.2配置文件中的定義、參數和選項.405
    1 DHCP規劃.407
    1.1在不同的網絡中使用DHCP.407
    1.2設置DHCP中繼代理.408
    1.3設置DHCP備份.408
    16.5與防火牆和SELinux的關係.409
    習題109
    實驗110
    17章FTP與TFTP服務器.411
    17.1 FTP與TFTP服務器概述.411
    17.1.1 FTP的相關概念.411
    17.1.2 Linux系統的FTP服務器.413
    17.2 vsftpd服務器.413
    17.2.1 vsftpd的常見配置.413
    17.2.2常見型vsftpd服務器配置. 418
    17.3 FTP服務器的使用.422
    17.3.1使用瀏覽器訪問FTP服務器.422
    17.3.2使用客戶端命令ftp訪問FTP服務器.422
    17.4 TFTP與TFTP服務器的使用簡介.425
    17.4.1 TFTP協議.425
    17.4 .2 TFTP的安裝、配置及應用.425
    17.5與防火牆和SELinux的關係.427
    17.5.1與防火牆的關係.427
    17.5.2與SELinux的關係.427
    習題17.428
    實驗17.428
    18章網絡資源共享服務.430
    18.1 Samba服務.430
    18.1.1 SMB協議與Samba.430
    18.1.2 Samba的安裝與啟動管理.431
    18.1.3 Samba的配置.432
    18.1.4配置共享打印機.437
    18.1 .5 Samba共享服務使用.439
    18.1.6關於防火牆和SELinux的說明.441
    18.2 NFS服務器.442
    18.2.1 NFS介紹.442
    18.2.2 NFS文件系統配置.443
    18.2.3 NFS系統的使用.445
    18.2 .4 NFS的其他功能.447
    18.2.5與防火牆和SELinux的關係.449
    習題18.450
    實驗18.450
    19章域名服務器DNS.451
    19.1 DNS概述.451
    19.1.1 IP地址與域名的轉換.451
    19.1.2域名空間和區域.452
    19.1.3 DNS查詢.453
    19.1.4 DNS服務器的類型.454
    19.1.5客戶端與域名解析相關的配置文件.455
    19.2 BIND.455
    19.2.1安裝BIND.455
    19.2.2 BIND的啟動管理.455
    19.2.3 DNS服務器的運行方式及工作目錄.456
    19.2.4 DNS服務器配置基礎.457
    19.2.5訪問控制設置.462
    19.3 DNS服務器配置實例.462
    19.3.1主域名服務器配置實例.462
    19.3.2輔助域名服務器配置實例.4
    19.4 DNS服務器測試.465
    19.5 DNS與防火牆及SELinux的關係.465
    19.5.1 DNS與防火牆的關係.465
    19.5.2 DNS與SELinux的關係.466
    習題19.466
    實驗19.466
    參考文獻.467

作者介紹


邵國金
中國計算機學會會員,河南城建學院教授。
操作系統方面的教學和研究工作。
從事操作系統、UNIX和Linux研究、應用與開發30來年,
主參編書籍有《Unix系統與軟件開發》,《Linux操作系統》等7部。
發表學術論文19篇,主持和參與省級科研項目5項,
獲河南省自然科學學術獎―優秀著作獎和河南省信息技術教育優秀成果獎多項。




相關書籍

Wireless Communications over MIMO Channels: Applications to CDMA and Multiple Antenna Systems

作者 Volker Kuhn

2020-11-01

Building Software for Simulation: Theory and Algorithms, with Applications in C++ (Hardcover)

作者 James J. Nutaro

2020-11-01

Telecommunications Law in the Internet Age

作者 Sharon K. Black

2020-11-01